package com.feiluan.config.mqtt;

/**
 * MQTT Core Configuration
 *
 * @author Moniruzzaman Md
 */
public abstract class MQTTSubcriberConfig {

    protected final String broker = "39.99.205.81";
    protected final int qos = 0;
    protected Boolean hasSSL = false;
    protected Integer port = 1883;
    protected final String userName = "mosquitto";
    protected final String password = "tN9NQe#fPh";
    protected final String TCP = "tcp://";
    protected final String SSL = "ssl://";


    public static final String topic = "7g_m2m/device/update";

    /**
     * Custom Configuration
     *
     * @param broker
     * @param port
     * @param ssl
     * @param withUserNamePass
     */
    protected abstract void config(String broker, Integer port, Boolean ssl, Boolean withUserNamePass);

    /**
     * Default Configuration
     */
    protected abstract void config();
}
